﻿using ControleRepresentante.Data.Catalogs;

namespace ControleRepresentante.Data.CatalogSteps
{
    internal class PedidoNumeroAsAutoIncrement : CatalogStepBase<ControleRepresentanteCatalogStepTypes>
    {
        protected override ControleRepresentanteCatalogStepTypes CatalogStepType
        {
            get { return ControleRepresentanteCatalogStepTypes.PedidoNumeroAsAutoIncrement; }
        }

        public override void Execute(IDataAccess dataAccess)
        {
            dataAccess.ExecuteCommand(@"
                ALTER TABLE Pedido CHANGE COLUMN Numero Numero INT(11) NOT NULL AUTO_INCREMENT,
                DROP PRIMARY KEY,
                ADD PRIMARY KEY (Numero, AttributeHolderId) ,
                ADD UNIQUE INDEX AttributeHolderId_UNIQUE (AttributeHolderId ASC)");
        }
    }
}
